查看原文
其他

速修复!热门开源库SQLite Database中的这个严重漏洞已存在22年,影响所有版本

Ravie Lakshmanan 代码卫士 2022-11-01

 聚焦源代码安全,网罗国内外最新资讯!

编译:代码卫士



SQLite Database库中存在一个高危漏洞(CVE-2022-35737,CVSS编号为7.5),最早可追溯至2000年10月。该漏洞可导致攻击者使程序崩溃或控制程序。


该漏洞已存在22年,影响SQLite 1.0.12至3.39.1版本,已在2022年7月1日发布的版本3.39.2中修复。

Trail of Bits 公司的研究员 Andreas Kellas 在刚刚发布的技术分析文章中指出,“CVE-2022-35737可在64位系统上遭利用,具体可利用性取决于程序是如何编译的。当该库在没有 stack canary 的情况下编译时会导致任意代码执行,但出现stack canary 时无法证实会发生任意代码执行后果,不过在所有情况下都会导致拒绝服务。”

SQLite用C语言编写,是使用最广泛的数据库引擎,默认包含在安卓、iOS、Windows 和 macOS以及热门web浏览器如 Google Chrome、Mozilla Firefox 和 Apple Safari 中。

CVE-2022-25737是一个整数溢出漏洞。当极大的字符串输入被当做参数传递给 printf 函数的SQLite 实现中时会触发整数溢出,而这些实现使用其它函数处理字符串格式 (“sqlite3_str_vappendf”)。

然而,成功利用该漏洞的前提条件是,该字符串中包含 %Q、%q 或 %w格式的可替换类型,从而可能导致用户控制的数据被写入栈分配的缓冲区边界。

Kellas 解释称,“如果格式字符串中包含 ‘!’特殊字符,启用unicode字符扫描,则在最糟糕情况下很可能实现任意代码执行,或者导致程序挂起和接近于无限循环。”

该漏洞也说明了一种在数十年前被认为不切实际的场景,即分配1GB字符串作为输入,随着64位计算系统的到来是可行的。

Kellas 指出,“在2000年SQLite源代码中,这个bug可能并未被视作错误,当时系统架构主要是32位的。”


代码卫士试用地址:https://codesafe.qianxin.com
开源卫士试用地址:https://oss.qianxin.com










推荐阅读
苹果修复 Windows 版本 iTunes 和iCloud 中的 SQLite和 WebKit 漏洞
SQLite 再被曝 RCE 漏洞
SQLite 被曝RCE漏洞  Chrome 等数百万应用受影响



原文链接

https://thehackernews.com/2022/10/22-year-old-vulnerability-reported-in.html


题图:韦伯太空望远镜,NASA‍



本文由奇安信编译,不代表奇安信观点。转载请注明“转自奇安信代码卫士 https://codesafe.qianxin.com”。




奇安信代码卫士 (codesafe)

国内首个专注于软件开发安全的产品线。

    觉得不错,就点个 “在看” 或 "赞” 吧~

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存